UNIT 1: COMPUTERS
Topic 1: Computer Overview & System Architecture
Core Fundamentals & Evolution:
- Define a computer and explain its major characteristics (Speed, Accuracy, Diligence, Versatility, Storage, Automation).
- Detail the History, Generations (1st to 5th generation), and Classification of Computers (Micro, Mini, Mainframe, Supercomputers).
- Discuss the widespread Applications of Computers in detail across domains (Education, Healthcare, Industry, Business, Science).
- With the help of a neat diagram, describe the basic organization of a computer system, explaining the roles of the Input Unit, Output Unit, Memory Unit (Primary & Secondary), Arithmetic Logic Unit (ALU), Control Unit (CU), and Central Processing Unit (CPU).
Topic 2: Spreadsheet Fundamentals & Data Operations
- Role in Industry & Education: Explain why the ability to handle and visualize data using spreadsheets is essential in modern education and industry.
- Basic Data Operations: Using a spreadsheet, describe how you would perform basic data operations (data entry, sorting, filtering, built-in formulas, and charting/visualization).
UNIT 2: COMPUTATIONAL THINKING
Topic 1: Pillars of Computational Thinking & Data Representation
Core Pillars:
- Define Computational Thinking and explain how it helps in structured problem-solving.
- Describe Decomposition with a suitable real-world example.
- Explain Abstraction and show how it helps in reducing complexity.
- Data Encoding: Explain how real-world information (text, sound, images, numbers) is converted into computable binary data, giving appropriate examples.
Topic 2: Number Systems, Conversions & Logic
- Number Systems: Describe Decimal, Binary, Octal, and Hexadecimal number systems (bases, digits used).
- Conversions: Explain conversions among number systems (e.g., Decimal to Binary, Binary to Decimal, Octal to Binary, Hexadecimal to Decimal) with solved examples.
- Logic & Truth Tables:
- Define Logic and explain the importance of logical reasoning in computing.
- Explain Boolean Logic, including basic Boolean operators (
AND,OR,NOT), with their truth tables. - Discuss the applications of propositional logic in computer science (decision making, digital logic circuits, conditional programming).
UNIT 3: PROBLEM SOLVING BASICS
Topic 1: Variable & Number Operations
- Value Swapping: Exchange the values of two variables without using a third variable.
- Digit Extraction & Operations:
- Count the number of digits in N.
- Find the sum of the digits of N.
- Reverse the digits of N.
Topic 2: Mathematical Sequences & Conversions
- Factorial Computation: Compute the factorial of N using:
- (a) An iterative approach
- (b) A recursive approach
- Fibonacci Generation: Generate the Fibonacci sequence up to N terms.
- Base Conversion Algorithm: Convert a given decimal number N into its binary equivalent.
UNIT 4: PROGRAMMING LANGUAGES
Topic 1: Program Development Life Cycle (PDLC) & Planning Tools
- PDLC: Explain the Program Development Life Cycle (PDLC) in detail. Discuss the importance of each phase in developing a reliable software program.
- Program Planning Tools:
- Define an algorithm, explain its characteristics, and discuss its role in effective problem solving and developing efficient, correct programs.
- Explain flowcharts in detail, including standard symbols and their applications in program design.
- Define pseudocode, explaining its advantages and limitations compared to flowcharts.
- Explain how algorithms, flowcharts, and pseudocode contribute to writing error-free and maintainable programs.
Topic 2: Languages, Paradigms & Execution Techniques
- Programming Languages: Explain programming languages, their classification (Low-level vs. High-level), and the key features of high-level programming languages.
- Implementation Techniques: Explain language implementation techniques, comparing compiler-based and interpreter-based language implementation.
- Programming Paradigms & Concepts:
- Define a programming paradigm and explain different paradigms (Imperative, Procedural, Declarative, Object-Oriented) with suitable examples.
- Explain traditional programming concepts used in software development and how they support structured programming.
- Describe Procedural Programming in detail, explaining procedural units and their role in modular program development.
- What is Declarative Programming? Explain its features and compare procedural and declarative programming paradigms with respect to program structure and execution.
- Integrated Analysis: Discuss the relationship between the Program Development Life Cycle, program design tools, and programming paradigms in software development.
UNIT 5: SCRATCH PROGRAMMING
Topic 1: Scratch Environment & Visual Tools
- Environment Overview: Explain Scratch as a visual programming language. Describe the Scratch programming environment and its main components in detail (Stage, Sprite List, Block Palette, Script Area).
- Paint Editor: Explain the Paint Editor in Scratch and how sprites and backdrops can be created and modified using it.
Topic 2: Block Palettes, Data & Input
- Block Classification & Operations: Describe Scratch blocks and their classification. Explain the use of arithmetic operators and functions in Scratch with examples.
- Palette Commands:
- Motion Palette: Explain motion commands and how they control the movement and direction of sprites.
- Looks Palette: Describe how a sprite's appearance can be changed using Looks blocks.
- Sound Palette: Explain how sounds are added, played, and controlled in a Scratch program.
- Pen Palette: Explain Pen commands and how Easy Draw can be used to create drawings and patterns.
- Control, Variables & User Input:
- Explain the importance of the
repeatblock in Scratch and describe its power in simplifying programs with suitable examples. - Describe data types supported in Scratch, explaining variables and their uses in programs.
- Explain how user input is obtained in Scratch using the
askandanswerblocks with examples.
UNIT 6: APP DEVELOPMENT
Topic 1: Architecture, Modeling & Development Process
- App Building Process: Explain the process of building applications using problem-solving techniques on any app development platform.
- System Modeling: Describe the role of modeling in app development and explain how modeling helps in designing efficient applications.
- Core Problem-Solving Techniques:
- What is algorithmic thinking, and what is its role in developing efficient and correct applications?
- Define decomposition and explain how it helps in solving complex app development problems.
- Explain abstraction in problem solving. How are abstracting and modularizing used together in app development?
- Explain the unified relationship between algorithmic thinking, abstraction, and decomposition in application development.
Topic 2: Development Models, Modularization & Reuse
- Development Models: Explain incremental and iterative development models, discussing their advantages in application development.
- Modularization & Reuse:
- Discuss the concept of reuse in app development and how it improves productivity and software quality.
- Explain modularization in application development and its importance in managing complex applications.
- Discuss the importance of modularization and reuse in building scalable applications.
Topic 3: Quality Assurance, Testing & Debugging
- Testing: Describe the process of testing in app development and explain different types of testing used in applications.
- Debugging: What is debugging? Explain the steps involved in debugging an application.
- Comparative & Continuous Integration
- Differentiate between testing and debugging in application development
- Explain how incremental and iterative approaches support continuous testing and debugging.
- Explain how problem-solving techniques improve the overall quality and reliability of mobile or web applications.

